/**
 * FileName: LoginService
 * Author: Mr.Wang
 * Date: 2025/10/15 13:45
 * Description:
 * History:
 */
package org.test.device.service;

import org.test.device.params.RefreshTokenParam;
import org.test.device.utils.ResultData;

/**
 * 〈一句话功能简述〉<br>
 * 〈登录服务接口〉
 *
 * @author Mr.Wang
 * @create 2025/10/15
 * @since 1.0.0
 */
public interface LoginService {

    /**
     * 登录方法
     * @param username 用户名
     * @param password 密码
     * @return 登录结果
     */
    ResultData login(String username, String password);

     /**
     * 刷新token方法
     * @param param 刷新token参数
     * @return 刷新结果
     */
    ResultData refreshToken(RefreshTokenParam param);

     /**
     * 退出登录方法
     * @param userId 用户ID
     * @return 退出结果
     */
    ResultData logout(Long userId);
}